package com.scala

import org.apache.spark.{SparkConf, SparkContext}

object Test1 {
  def main(args: Array[String]): Unit = {
    val conf = new SparkConf().setMaster("local").setAppName("WordCount")
    val sc = new SparkContext(conf)
    //flatMap与map唯一不一样的地方就是传入的函数在处理完后返回值必须是List
    val words = sc.textFile("/Users/hktry/testCSV.csv").flatMap(line=>line.split(","));
    //map函数的用法，顾名思义，将一个函数传入map中，然后利用传入的这个函数，将集合中的每个元素处理，并将处理后的结果返回
    val counts = words.map(word => (word,1))
    counts.collect.foreach {
      case (word, num) =>
        println(word + " " + num.toString)
    }
  }
}
